const util = require('../../utils/util.js') //导包，引入外部文件
const app = getApp() // 获取app.js
Page({
  data: {// 这个页面的全局变量
    api: app.globalData.api, // http://localhost:8080
    indicatorDots: true,//指示器true
    autoplay: true,     //自动播放true
    interval: 4000,     //间隔时间4s
    duration: 2000,     //动画持续时长2s
    imgUrls: [],
    category: [],
    product: [],
    cid: 0
  },
  onLoad: function () {// 这个页面的主函数
    util.setTabBarBadgeNumber(2, util.getStorageObj('cart').length)
    // 数据库数据->java->小程序
    // 数据库和java交互用的是mybatis sql语句
    // 小程序和java交互用的是http请求
    util.httpGetLoading('/wx/index', resp => {
     // util.alert(resp)
      this.data.category = resp.category
      if (this.data.category && this.data.category.length > 0) {
        this.data.cid = this.data.category[0].id
      }
      this.data.product = resp.product
      util.getStorageCart('cart', 'id', 'count', this.data.product) // 把同类商品折合计数count
      this.data.imgUrls = resp.hot
      this.setData(this.data) // 把数据更新到页面上
    })
  },
  // 小程序js语句末尾可以不用加分号，也可以加分号，随你习惯，行业习惯不加分号
  // 网页js行业习惯是要加;
  clickCategory: function (e) {
    //  data-item="{{item}}"
    this.data.cid = e.currentTarget.dataset.item.id
    util.httpGet('/wx/index?cid=' + this.data.cid, resp => {
      this.data.product = resp.product
      util.getStorageCart('cart', 'id', 'count', this.data.product) // 把同类商品折合计数count
      this.setData(this.data) // 把数据更新到页面上
    })
  },
  addCart: function (e) {
    var item = e.currentTarget.dataset.item
    var len = util.enableAddStorageObj('cart', 'id', 'num', item, function () {
      util.alert(item.product + '售罄了！')
    })
    util.setTabBarBadgeNumber(2, len) // 设置TabBar红色数字角标
    util.getStorageCart('cart', 'id', 'count', this.data.product) // 把同类商品折合计数count
    this.setData(this.data)
  },
  reduceCart: function (e) {
    var item = e.currentTarget.dataset.item
    var len = util.delStorageObj('cart', 'id', item.id)
    util.setTabBarBadgeNumber(2, len) // 设置TabBar红色数字角标
    util.getStorageCart('cart', 'id', 'count', this.data.product) // 把同类商品折合计数count
    this.setData(this.data)
  },

  onTabItemTap: function () { // 点击tab按钮时，这个函数会被调用
    this.onLoad() // 再一次调用主函数
  },

  startPage: function (e) {
    wx.setStorageSync('item', e.currentTarget.dataset.item) // 存参数
    util.redirect('detail') // 不带参数打开页面
    util.redirect({
      url: 'detail', // 打开详情页面
      product: e.currentTarget.dataset.item.product, // 打开页面传参
      logo: e.currentTarget.dataset.item.logo,
      price: e.currentTarget.dataset.item.price // ...
    })
  }
})